#n24. It has purely coclosed G2-structure


D.<e1,e2,e3,e4,e5,e6,f1,f2,f3,f4,f5,f6,g1,g2,g3,g4,g5,g6,h1,h2,h3,h4,h5,h6> = GradedCommutativeAlgebra(QQ)
N=D.cdg_algebra({})
N.inject_variables()
psie=2*e1*e2*e3-2*e1*e2*e5-e1*e5*e6-e2*e4*e6+2*e3*e4*e5
psif=2*f1*f2*f3-2*f1*f2*f5-f1*f5*f6-f2*f4*f6+2*f3*f4*f5
psig=2*g1*g2*g3-2*g1*g2*g5-g1*g5*g6-g2*g4*g6+2*g3*g4*g5
psih=2*h1*h2*h3-2*h1*h2*h5-h1*h5*h6-h2*h4*h6+2*h3*h4*h5
Cgfe=g1*f2*f3*e4*e5*e6+g1*f2*e3*f4*e5*e6+g1*f2*e3*e4*f5*e6+g1*f2*e3*e4*e5*f6+g1*e2*f3*f4*e5*e6+g1*e2*f3*e4*f5*e6+g1*e2*f3*e4*e5*f6+g1*e2*e3*f4*f5*e6+g1*e2*e3*f4*e5*f6+g1*e2*e3*e4*f5*f6+f1*g2*f3*e4*e5*e6+f1*g2*e3*f4*e5*e6+f1*g2*e3*e4*f5*e6+f1*g2*e3*e4*e5*f6+e1*g2*f3*f4*e5*e6+e1*g2*f3*e4*f5*e6+e1*g2*f3*e4*e5*f6+e1*g2*e3*f4*f5*e6+e1*g2*e3*f4*e5*f6+e1*g2*e3*e4*f5*f6+f1*f2*g3*e4*e5*e6+f1*e2*g3*f4*e5*e6+f1*e2*g3*e4*f5*e6+f1*e2*g3*e4*e5*f6+e1*f2*g3*f4*e5*e6+e1*f2*g3*e4*f5*e6+e1*f2*g3*e4*e5*f6+e1*e2*g3*f4*f5*e6+e1*e2*g3*f4*e5*f6+e1*e2*g3*e4*f5*f6+f1*f2*e3*g4*e5*e6+f1*e2*f3*g4*e5*e6+f1*e2*e3*g4*f5*e6+f1*e2*e3*g4*e5*f6+e1*f2*f3*g4*e5*e6+e1*f2*e3*g4*f5*e6+e1*f2*e3*g4*e5*f6+e1*e2*f3*g4*f5*e6+e1*e2*f3*g4*e5*f6+e1*e2*e3*g4*f5*f6+f1*f2*e3*e4*g5*e6+f1*e2*f3*e4*g5*e6+f1*e2*e3*f4*g5*e6+f1*e2*e3*e4*g5*f6+e1*f2*f3*e4*g5*e6+e1*f2*e3*f4*g5*e6+e1*f2*e3*e4*g5*f6+e1*e2*f3*f4*g5*e6+e1*e2*f3*e4*g5*f6+e1*e2*e3*f4*g5*f6+f1*f2*e3*e4*e5*g6+f1*e2*f3*e4*e5*g6+f1*e2*e3*f4*e5*g6+f1*e2*e3*e4*f5*g6+e1*f2*f3*e4*e5*g6+e1*f2*e3*f4*e5*g6+e1*f2*e3*e4*f5*g6+e1*e2*f3*f4*e5*g6+e1*e2*f3*e4*f5*g6+e1*e2*e3*f4*f5*g6
Cfgh=f1*g2*g3*h4*h5*h6+f1*g2*h3*g4*h5*h6+f1*g2*h3*h4*g5*h6+f1*g2*h3*h4*h5*g6+f1*h2*g3*g4*h5*h6+f1*h2*g3*h4*g5*h6+f1*h2*g3*h4*h5*g6+f1*h2*h3*g4*g5*h6+f1*h2*h3*g4*h5*g6+f1*h2*h3*h4*g5*g6+g1*f2*g3*h4*h5*h6+g1*f2*h3*g4*h5*h6+g1*f2*h3*h4*g5*h6+g1*f2*h3*h4*h5*g6+h1*f2*g3*g4*h5*h6+h1*f2*g3*h4*g5*h6+h1*f2*g3*h4*h5*g6+h1*f2*h3*g4*g5*h6+h1*f2*h3*g4*h5*g6+h1*f2*h3*h4*g5*g6+g1*g2*f3*h4*h5*h6+g1*h2*f3*g4*h5*h6+g1*h2*f3*h4*g5*h6+g1*h2*f3*h4*h5*g6+h1*g2*f3*g4*h5*h6+h1*g2*f3*h4*g5*h6+h1*g2*f3*h4*h5*g6+h1*h2*f3*g4*g5*h6+h1*h2*f3*g4*h5*g6+h1*h2*f3*h4*g5*g6+g1*g2*h3*f4*h5*h6+g1*h2*g3*f4*h5*h6+g1*h2*h3*f4*g5*h6+g1*h2*h3*f4*h5*g6+h1*g2*g3*f4*h5*h6+h1*g2*h3*f4*g5*h6+h1*g2*h3*f4*h5*g6+h1*h2*g3*f4*g5*h6+h1*h2*g3*f4*h5*g6+h1*h2*h3*f4*g5*g6+g1*g2*h3*h4*f5*h6+g1*h2*g3*h4*f5*h6+g1*h2*h3*g4*f5*h6+g1*h2*h3*h4*f5*g6+h1*g2*g3*h4*f5*h6+h1*g2*h3*g4*f5*h6+h1*g2*h3*h4*f5*g6+h1*h2*g3*g4*f5*h6+h1*h2*g3*h4*f5*g6+h1*h2*h3*g4*f5*g6+g1*g2*h3*h4*h5*f6+g1*h2*g3*h4*h5*f6+g1*h2*h3*g4*h5*f6+g1*h2*h3*h4*g5*f6+h1*g2*g3*h4*h5*f6+h1*g2*h3*g4*h5*f6+h1*g2*h3*h4*g5*f6+h1*h2*g3*g4*h5*f6+h1*h2*g3*h4*g5*f6+h1*h2*h3*g4*g5*f6
(-1/6)*psie*Cgfe*psif*psih*Cfgh*psig



D.<e1,e2,e3,e4,e5,e6,f1,f2,f3,f4,f5,f6,g1,g2,g3,g4,g5,g6,h1,h2,h3,h4,h5,h6,x1,x2,x3,x4,x5,x6,y1,y2,y3,y4,y5,y6,z1,z2,z3,z4,z5,z6> = GradedCommutativeAlgebra(QQ)
N=D.cdg_algebra({})
N.inject_variables()
psie=2*e1*e2*e3-2*e1*e2*e5-e1*e5*e6-e2*e4*e6+2*e3*e4*e5
psif=2*f1*f2*f3-2*f1*f2*f5-f1*f5*f6-f2*f4*f6+2*f3*f4*f5
psig=2*g1*g2*g3-2*g1*g2*g5-g1*g5*g6-g2*g4*g6+2*g3*g4*g5
psih=2*h1*h2*h3-2*h1*h2*h5-h1*h5*h6-h2*h4*h6+2*h3*h4*h5
psix=2*x1*x2*x3-2*x1*x2*x5-x1*x5*x6-x2*x4*x6+2*x3*x4*x5
psiy=2*y1*y2*y3-2*y1*y2*y5-y1*y5*y6-y2*y4*y6+2*y3*y4*y5
psiz=2*z1*z2*z3-2*z1*z2*z5-z1*z5*z6-z2*z4*z6+2*z3*z4*z5
psixyz=2*x1*y2*z3-2*x1*y2*z5-x1*y5*z6-x2*y4*z6+2*x3*y4*z5
Chxe=h1*x2*x3*e4*e5*e6+h1*x2*e3*x4*e5*e6+h1*x2*e3*e4*x5*e6+h1*x2*e3*e4*e5*x6+h1*e2*x3*x4*e5*e6+h1*e2*x3*e4*x5*e6+h1*e2*x3*e4*e5*x6+h1*e2*e3*x4*x5*e6+h1*e2*e3*x4*e5*x6+h1*e2*e3*e4*x5*x6+x1*h2*x3*e4*e5*e6+x1*h2*e3*x4*e5*e6+x1*h2*e3*e4*x5*e6+x1*h2*e3*e4*e5*x6+e1*h2*x3*x4*e5*e6+e1*h2*x3*e4*x5*e6+e1*h2*x3*e4*e5*x6+e1*h2*e3*x4*x5*e6+e1*h2*e3*x4*e5*x6+e1*h2*e3*e4*x5*x6+x1*x2*h3*e4*e5*e6+x1*e2*h3*x4*e5*e6+x1*e2*h3*e4*x5*e6+x1*e2*h3*e4*e5*x6+e1*x2*h3*x4*e5*e6+e1*x2*h3*e4*x5*e6+e1*x2*h3*e4*e5*x6+e1*e2*h3*x4*x5*e6+e1*e2*h3*x4*e5*x6+e1*e2*h3*e4*x5*x6+x1*x2*e3*h4*e5*e6+x1*e2*x3*h4*e5*e6+x1*e2*e3*h4*x5*e6+x1*e2*e3*h4*e5*x6+e1*x2*x3*h4*e5*e6+e1*x2*e3*h4*x5*e6+e1*x2*e3*h4*e5*x6+e1*e2*x3*h4*x5*e6+e1*e2*x3*h4*e5*x6+e1*e2*e3*h4*x5*x6+x1*x2*e3*e4*h5*e6+x1*e2*x3*e4*h5*e6+x1*e2*e3*x4*h5*e6+x1*e2*e3*e4*h5*x6+e1*x2*x3*e4*h5*e6+e1*x2*e3*x4*h5*e6+e1*x2*e3*e4*h5*x6+e1*e2*x3*x4*h5*e6+e1*e2*x3*e4*h5*x6+e1*e2*e3*x4*h5*x6+x1*x2*e3*e4*e5*h6+x1*e2*x3*e4*e5*h6+x1*e2*e3*x4*e5*h6+x1*e2*e3*e4*x5*h6+e1*x2*x3*e4*e5*h6+e1*x2*e3*x4*e5*h6+e1*x2*e3*e4*x5*h6+e1*e2*x3*x4*e5*h6+e1*e2*x3*e4*x5*h6+e1*e2*e3*x4*x5*h6
Chyf=h1*y2*y3*f4*f5*f6+h1*y2*f3*y4*f5*f6+h1*y2*f3*f4*y5*f6+h1*y2*f3*f4*f5*y6+h1*f2*y3*y4*f5*f6+h1*f2*y3*f4*y5*f6+h1*f2*y3*f4*f5*y6+h1*f2*f3*y4*y5*f6+h1*f2*f3*y4*f5*y6+h1*f2*f3*f4*y5*y6+y1*h2*y3*f4*f5*f6+y1*h2*f3*y4*f5*f6+y1*h2*f3*f4*y5*f6+y1*h2*f3*f4*f5*y6+f1*h2*y3*y4*f5*f6+f1*h2*y3*f4*y5*f6+f1*h2*y3*f4*f5*y6+f1*h2*f3*y4*y5*f6+f1*h2*f3*y4*f5*y6+f1*h2*f3*f4*y5*y6+y1*y2*h3*f4*f5*f6+y1*f2*h3*y4*f5*f6+y1*f2*h3*f4*y5*f6+y1*f2*h3*f4*f5*y6+f1*y2*h3*y4*f5*f6+f1*y2*h3*f4*y5*f6+f1*y2*h3*f4*f5*y6+f1*f2*h3*y4*y5*f6+f1*f2*h3*y4*f5*y6+f1*f2*h3*f4*y5*y6+y1*y2*f3*h4*f5*f6+y1*f2*y3*h4*f5*f6+y1*f2*f3*h4*y5*f6+y1*f2*f3*h4*f5*y6+f1*y2*y3*h4*f5*f6+f1*y2*f3*h4*y5*f6+f1*y2*f3*h4*f5*y6+f1*f2*y3*h4*y5*f6+f1*f2*y3*h4*f5*y6+f1*f2*f3*h4*y5*y6+y1*y2*f3*f4*h5*f6+y1*f2*y3*f4*h5*f6+y1*f2*f3*y4*h5*f6+y1*f2*f3*f4*h5*y6+f1*y2*y3*f4*h5*f6+f1*y2*f3*y4*h5*f6+f1*y2*f3*f4*h5*y6+f1*f2*y3*y4*h5*f6+f1*f2*y3*f4*h5*y6+f1*f2*f3*y4*h5*y6+y1*y2*f3*f4*f5*h6+y1*f2*y3*f4*f5*h6+y1*f2*f3*y4*f5*h6+y1*f2*f3*f4*y5*h6+f1*y2*y3*f4*f5*h6+f1*y2*f3*y4*f5*h6+f1*y2*f3*f4*y5*h6+f1*f2*y3*y4*f5*h6+f1*f2*y3*f4*y5*h6+f1*f2*f3*y4*y5*h6
Chzg=h1*z2*z3*g4*g5*g6+h1*z2*g3*z4*g5*g6+h1*z2*g3*g4*z5*g6+h1*z2*g3*g4*g5*z6+h1*g2*z3*z4*g5*g6+h1*g2*z3*g4*z5*g6+h1*g2*z3*g4*g5*z6+h1*g2*g3*z4*z5*g6+h1*g2*g3*z4*g5*z6+h1*g2*g3*g4*z5*z6+z1*h2*z3*g4*g5*g6+z1*h2*g3*z4*g5*g6+z1*h2*g3*g4*z5*g6+z1*h2*g3*g4*g5*z6+g1*h2*z3*z4*g5*g6+g1*h2*z3*g4*z5*g6+g1*h2*z3*g4*g5*z6+g1*h2*g3*z4*z5*g6+g1*h2*g3*z4*g5*z6+g1*h2*g3*g4*z5*z6+z1*z2*h3*g4*g5*g6+z1*g2*h3*z4*g5*g6+z1*g2*h3*g4*z5*g6+z1*g2*h3*g4*g5*z6+g1*z2*h3*z4*g5*g6+g1*z2*h3*g4*z5*g6+g1*z2*h3*g4*g5*z6+g1*g2*h3*z4*z5*g6+g1*g2*h3*z4*g5*z6+g1*g2*h3*g4*z5*z6+z1*z2*g3*h4*g5*g6+z1*g2*z3*h4*g5*g6+z1*g2*g3*h4*z5*g6+z1*g2*g3*h4*g5*z6+g1*z2*z3*h4*g5*g6+g1*z2*g3*h4*z5*g6+g1*z2*g3*h4*g5*z6+g1*g2*z3*h4*z5*g6+g1*g2*z3*h4*g5*z6+g1*g2*g3*h4*z5*z6+z1*z2*g3*g4*h5*g6+z1*g2*z3*g4*h5*g6+z1*g2*g3*z4*h5*g6+z1*g2*g3*g4*h5*z6+g1*z2*z3*g4*h5*g6+g1*z2*g3*z4*h5*g6+g1*z2*g3*g4*h5*z6+g1*g2*z3*z4*h5*g6+g1*g2*z3*g4*h5*z6+g1*g2*g3*z4*h5*z6+z1*z2*g3*g4*g5*h6+z1*g2*z3*g4*g5*h6+z1*g2*g3*z4*g5*h6+z1*g2*g3*g4*z5*h6+g1*z2*z3*g4*g5*h6+g1*z2*g3*z4*g5*h6+g1*z2*g3*g4*z5*h6+g1*g2*z3*z4*g5*h6+g1*g2*z3*g4*z5*h6+g1*g2*g3*z4*z5*h6
psie*Chxe*psix*psif*Chyf*psiy*psig*Chzg*psiz*psixyz

#psiplus=c*(2*x2*x3*x4+2*x1*x3*x5+2*x2*x4*x5-x1*x2*x6-x4*x5*x6)

D.<e1,e2,e3,e4,e5,e6,f1,f2,f3,f4,f5,f6,x1,x2,x3,x4,x5,x6> = GradedCommutativeAlgebra(QQ,degrees=(1,1,1,1,1,1,1,1,1,1,1,1,2,2,2,2,2,2))
N=D.cdg_algebra({})
N.inject_variables()
psie=2*e1*e2*e3-2*e1*e2*e5-e1*e5*e6-e2*e4*e6+2*e3*e4*e5
psif=2*f1*f2*f3-2*f1*f2*f5-f1*f5*f6-f2*f4*f6+2*f3*f4*f5
omegaxf=(-x1*f4+x2*f5+x3*f6-x5*f6)-(-f1*x4+f2*x5+f3*x6-f5*x6)
Cxfe=x1*f2*f3*e4*e5*e6+x1*f2*e3*f4*e5*e6+x1*f2*e3*e4*f5*e6+x1*f2*e3*e4*e5*f6+x1*e2*f3*f4*e5*e6+x1*e2*f3*e4*f5*e6+x1*e2*f3*e4*e5*f6+x1*e2*e3*f4*f5*e6+x1*e2*e3*f4*e5*f6+x1*e2*e3*e4*f5*f6-x2*f1*f3*e4*e5*e6-x2*f1*e3*f4*e5*e6-x2*f1*e3*e4*f5*e6-x2*f1*e3*e4*e5*f6-x2*e1*f3*f4*e5*e6-x2*e1*f3*e4*f5*e6-x2*e1*f3*e4*e5*f6-x2*e1*e3*f4*f5*e6-x2*e1*e3*f4*e5*f6-x2*e1*e3*e4*f5*f6+x3*f1*f2*e4*e5*e6+x3*f1*e2*f4*e5*e6+x3*f1*e2*e4*f5*e6+x3*f1*e2*e4*e5*f6+x3*e1*f2*f4*e5*e6+x3*e1*f2*e4*f5*e6+x3*e1*f2*e4*e5*f6+x3*e1*e2*f4*f5*e6+x3*e1*e2*f4*e5*f6+x3*e1*e2*e4*f5*f6-x4*f1*f2*e3*e5*e6-x4*f1*e2*f3*e5*e6-x4*f1*e2*e3*f5*e6-x4*f1*e2*e3*e5*f6-x4*e1*f2*f3*e5*e6-x4*e1*f2*e3*f5*e6-x4*e1*f2*e3*e5*f6-x4*e1*e2*f3*f5*e6-x4*e1*e2*f3*e5*f6-x4*e1*e2*e3*f5*f6+x5*f1*f2*e3*e4*e6+x5*f1*e2*f3*e4*e6+x5*f1*e2*e3*f4*e6+x5*f1*e2*e3*e4*f6+x5*e1*f2*f3*e4*e6+x5*e1*f2*e3*f4*e6+x5*e1*f2*e3*e4*f6+x5*e1*e2*f3*f4*e6+x5*e1*e2*f3*e4*f6+x5*e1*e2*e3*f4*f6-x6*f1*f2*e3*e4*e5-x6*f1*e2*f3*e4*e5-x6*f1*e2*e3*f4*e5-x6*f1*e2*e3*e4*f5-x6*e1*f2*f3*e4*e5-x6*e1*f2*e3*f4*e5-x6*e1*f2*e3*e4*f5-x6*e1*e2*f3*f4*e5-x6*e1*e2*f3*e4*f5-x6*e1*e2*e3*f4*f5
1/2*psie*Cxfe*psif*omegaxf

# 2x1^2 + 2x2^2 + 4x3^2 - 8x3*x5 + 2x4^2 + 6x5^2 + x6^2
# [2,0,0,0,0,0],[0,2,0,0,0,0],[0,0,4,0,-4,0],[0,0,0,1,0,0],[0,0,-4,0,6,0],[0,0,0,0,0,1]
# The metric is positive definite


A.<x1,x2,x3,x4,x5,x6,x7> = GradedCommutativeAlgebra(QQ)
M=A.cdg_algebra({ x3:x1*x2, x4: x1*x3,x5:x1*x4+x2*x3,x6:x1*x5+x2*x4 })
M.inject_variables()
omega=-x1*x4+x2*x5+x3*x6-x5*x6
psi=2*x1*x2*x3-2*x1*x2*x5-x1*x5*x6-x2*x4*x6+2*x3*x4*x5
psiplus=-1/2*(2*x2*x3*x4+2*x1*x3*x5+2*x2*x4*x5-x1*x2*x6-x4*x5*x6)
eta=x7
omega*psi
psi*psiplus-(2/3)*omega^3
psi.differential()
omega*omega.differential()-psi*eta.differential()
omega^2*eta.differential()+2*psiplus*omega.differential()